{% extends 'layout.html' %}

{% block content %}
    <div class="container">
        <div class="panel panel-default">
            <div class="panel-heading">表单</div>
            <div class="panel-body">
                <form id="formAdd">
                    <div class="clearfix">
                        {% for foo in form %}
                            <div class="col-xs-6">
                                <div class="form-group" style="position: relative; margin-bottom: 20px">
                                    <label>{{ foo.label }}</label>
                                    {{ foo }}
                                    <span class="error_msg" style="color: red; position: absolute"></span>
                                </div>
                            </div>
                        {% endfor %}
                        <div class="col-xs-12">
                            <button id="btnAdd" type="button" class="btn btn-primary">提交</button>
                        </div>

                    </div>
                </form>
            </div>
        </div>
        <div class="panel panel-default">
            <div class="panel-heading">
                <span class="glyphicon glyphicon-th-list" aria-hidden="true"></span>
                任务列表
            </div>
            <table class="table table-bordered">
                <thead>
                <tr>
                    <th>id</th>
                    <th>标题</th>
                    <th>级别</th>
                    <th>负责人</th>
                    <th>操作</th>
                </tr>
                </thead>
                <tbody>
                {% for obj in queryset %}
                    <tr>
                        <th>{{ obj.id }}</th>
                        <td>{{ obj.title }}</td>
                        <td>{{ obj.get_level_display }}</td>
                        <td>{{ obj.user.username }}</td>
                        <td>
                            <a class="btn btn-primary btn-xs" href="#">编辑</a>
                            <a class="btn btn-danger btn-xs" href="#">删除</a>
                        </td>
                    </tr>
                {% endfor %}
                </tbody>
            </table>
        </div>
        <ul class="pagination" style="float: left">
            {{ page_string }}
        </ul>
    </div>

    <div style="height: 1000px">
    </div>
    <div class="container">
        <h1>Ajax学习</h1>

        <h3>示例1</h3>
        <input id="btn1" type="button" class="btn btn-primary" value="点击"/>

        <h3>示例2</h3>
        <input type="text" id="txt_user" placeholder="用户名">
        <input type="text" id="txt_pwd" placeholder="密码">
        <input id="btn2" type="button" class="btn btn-primary" value="点击2"/>

        <h3>示例3</h3>
        <form id="form3">
            <input type="text" name="user" placeholder="用户名">
            <input type="text" name="pwd" placeholder="密码">
            <input type="text" name="email" placeholder="邮箱">
            <input type="text" name="more" placeholder="介绍">
            <input id="btn3" type="button" class="btn btn-primary" value="点击3"/>
        </form>
    </div>
{% endblock %}

{% block js %}
    <script>
        $(function () {
            bindBtn1Event();
            bindBtn2Event();
            bindBtn3Event();
            bindBtnAddEvent();
        })

        function bindBtn1Event() {
            $('#btn1').click(function () {
                $.ajax({
                    url: '/task/ajax/',
                    type: 'post',
                    data: {
                        n1: 123,
                        n2: 3
                    },
                    {#因为前端取到的时候时字符串类型，使用dataType: 'JSON',可以转换成对象#}
                    dataType: 'JSON',
                    success: function (res) {
                        console.log(res)
                        console.log(res.status)
                        console.log(res.data)
                    }
                })
            })
        }

        function bindBtn2Event() {
            $('#btn2').click(function () {
                $.ajax({
                    url: '/task/ajax/',
                    type: 'post',
                    data: {
                        name: $('#txt_user').val(),
                        age: $('#txt_pwd').val()
                    },
                    {#因为前端取到的时候时字符串类型，使用dataType: 'JSON',可以转换成对象#}
                    dataType: 'JSON',
                    success: function (res) {
                        console.log(res)
                        console.log(res.status)
                        console.log(res.data)
                    }
                })
            })
        }

        function bindBtn3Event() {
            $('#btn3').click(function () {
                $.ajax({
                    url: '/task/ajax/',
                    type: 'post',
                    data: $('#form3').serialize(),
                    {#因为前端取到的时候时字符串类型，使用dataType: 'JSON',可以转换成对象#}
                    dataType: 'JSON',
                    success: function (res) {
                        console.log(res)
                        console.log(res.status)
                        console.log(res.data)
                    }
                })
            })
        }

        function bindBtnAddEvent() {
            $('#btnAdd').click(function () {

                {#每次点击清空错误信息#}
                $('.error_msg').empty()
                $.ajax({
                    url: '/task/add/',
                    type: 'post',
                    data: $('#formAdd').serialize(),
                    {#因为前端取到的时候时字符串类型，使用dataType: 'JSON',可以转换成对象#}
                    dataType: 'JSON',
                    success: function (res) {
                        if (res.status) {
                            alert('添加成功')

                            {#    用js处理页面刷新#}
                            location.reload();
                        } else {
                            $.each(res.error, function (name, data) {
                                $('#id_' + name).next().text(data[0])
                            })
                        }
                    }
                })
            })
        }
    </script>
{% endblock %}